package sv.gob.mh.dgii.model;

// Generated Dec 12, 2007 1:25:05 PM by Hibernate Tools 3.2.0.CR1

import java.util.HashSet;
import java.util.Set;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * EdTransaccionesFormulario generated by hbm2java
 */
@Entity
@Table(name = "ED_TRANSACCIONES_FORMULARIO", schema = "EDADEPUDOC")
public class EdTransaccionesFormulario implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -8039482895486699285L;
	private EdTransaccionesFormularioId id;
	private TbFormulariosVersiones tbFormulariosVersiones;
	private TbTransaccion tbTransaccion;
	private String ddescripcion;
	private Integer nordenEjecucion;
	private String scondicionEjec;
	private String snotas;
	private String mtipo;
	private String stabla;
	private Integer bmodeloParams;
	private Set<EdParametrosTransacciones> edParametrosTransaccioneses = new HashSet<EdParametrosTransacciones>(
			0);

	public EdTransaccionesFormulario() {
	}

	public EdTransaccionesFormulario(EdTransaccionesFormularioId id,
			TbFormulariosVersiones tbFormulariosVersiones,
			TbTransaccion tbTransaccion) {
		this.id = id;
		this.tbFormulariosVersiones = tbFormulariosVersiones;
		this.tbTransaccion = tbTransaccion;
	}

	public EdTransaccionesFormulario(EdTransaccionesFormularioId id,
			TbFormulariosVersiones tbFormulariosVersiones,
			TbTransaccion tbTransaccion, String ddescripcion,
			Integer nordenEjecucion, String scondicionEjec, String snotas,
			String mtipo, String stabla, Integer bmodeloParams,
			Set<EdParametrosTransacciones> edParametrosTransaccioneses) {
		this.id = id;
		this.tbFormulariosVersiones = tbFormulariosVersiones;
		this.tbTransaccion = tbTransaccion;
		this.ddescripcion = ddescripcion;
		this.nordenEjecucion = nordenEjecucion;
		this.scondicionEjec = scondicionEjec;
		this.snotas = snotas;
		this.mtipo = mtipo;
		this.stabla = stabla;
		this.bmodeloParams = bmodeloParams;
		this.edParametrosTransaccioneses = edParametrosTransaccioneses;
	}

	@EmbeddedId
	@AttributeOverrides( {
			@AttributeOverride(name = "ctransaccion", column = @Column(name = "C_TRANSACCION", nullable = false, precision = 18, scale = 0)),
			@AttributeOverride(name = "cformulario", column = @Column(name = "C_FORMULARIO", nullable = false, precision = 4, scale = 0)),
			@AttributeOverride(name = "cversion", column = @Column(name = "C_VERSION", nullable = false, precision = 4, scale = 0)) })
	public EdTransaccionesFormularioId getId() {
		return this.id;
	}

	public void setId(EdTransaccionesFormularioId id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumns( {
			@JoinColumn(name = "C_FORMULARIO", referencedColumnName = "C_FORMULARIO", nullable = false, insertable = false, updatable = false),
			@JoinColumn(name = "C_VERSION", referencedColumnName = "C_VERSION", nullable = false, insertable = false, updatable = false) })
	public TbFormulariosVersiones getTbFormulariosVersiones() {
		return this.tbFormulariosVersiones;
	}

	public void setTbFormulariosVersiones(
			TbFormulariosVersiones tbFormulariosVersiones) {
		this.tbFormulariosVersiones = tbFormulariosVersiones;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "C_TRANSACCION", nullable = false, insertable = false, updatable = false)
	public TbTransaccion getTbTransaccion() {
		return this.tbTransaccion;
	}

	public void setTbTransaccion(TbTransaccion tbTransaccion) {
		this.tbTransaccion = tbTransaccion;
	}

	@Column(name = "D_DESCRIPCION", length = 60)
	public String getDdescripcion() {
		return this.ddescripcion;
	}

	public void setDdescripcion(String ddescripcion) {
		this.ddescripcion = ddescripcion;
	}

	@Column(name = "N_ORDEN_EJECUCION", precision = 3, scale = 0)
	public Integer getNordenEjecucion() {
		return this.nordenEjecucion;
	}

	public void setNordenEjecucion(Integer nordenEjecucion) {
		this.nordenEjecucion = nordenEjecucion;
	}

	@Column(name = "S_CONDICION_EJEC", length = 250)
	public String getScondicionEjec() {
		return this.scondicionEjec;
	}

	public void setScondicionEjec(String scondicionEjec) {
		this.scondicionEjec = scondicionEjec;
	}

	@Column(name = "S_NOTAS", length = 250)
	public String getSnotas() {
		return this.snotas;
	}

	public void setSnotas(String snotas) {
		this.snotas = snotas;
	}

	@Column(name = "M_TIPO", length = 250)
	public String getMtipo() {
		return this.mtipo;
	}

	public void setMtipo(String mtipo) {
		this.mtipo = mtipo;
	}

	@Column(name = "S_TABLA", length = 250)
	public String getStabla() {
		return this.stabla;
	}

	public void setStabla(String stabla) {
		this.stabla = stabla;
	}
	
	@Column(name = "B_MODELO_PARAMS", precision = 1, scale = 0)
	public Integer getBmodeloParams() {
		return this.bmodeloParams;
	}

	public void setBmodeloParams(Integer bmodeloParams) {
		this.bmodeloParams = bmodeloParams;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "edTransaccionesFormulario")
	public Set<EdParametrosTransacciones> getEdParametrosTransaccioneses() {
		return this.edParametrosTransaccioneses;
	}

	public void setEdParametrosTransaccioneses(
			Set<EdParametrosTransacciones> edParametrosTransaccioneses) {
		this.edParametrosTransaccioneses = edParametrosTransaccioneses;
	}

}
